<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>

  <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
</head>
<body>
  <div id="app">
    <p @click="addCount">{{count}}</p>
  </div>
</body>
</html>

<script>
  //vue 两大核心概念
  /**
   * !vue 两大核心概念
   * ! 01  声明式渲染
   * 只要在data中声明数据, 当数据修改时, 页面中使用数据的节点会自动更新, 所以也将data中声明的数据叫做  响应式数据
   * 
   * !02 组件化开发
   * 将页面拆分成多个组件,  将页面结构进行解耦, 方便 维护,  重复利用组件, 减少代码量
   * 
   * 
   */

  const {createApp} = Vue;

  console.log(Vue);

  const vm = createApp({
    data(){
      return {
        count: 0,
      }
    }, 
    
    methods: {
      addCount(){
        console.log('vm', vm);
        vm.count++;
      }
      
    }
  }).mount('#app')

  console.log(vm);
</script>